home *** CD-ROM | disk | FTP | other *** search
/ BBS in a Box 15 / BBS in a box XV-1.iso / Files / Util / D / DensePrint 1.0.sit / DensePrint.rsrc / DPrt_1003_Using DensePrint < prev    next >
Encoding:
Text File  |  1989-08-17  |  22.1 KB  |  247 lines

  1. • Things you need to know if you don’t intend to read everything
  2.  
  3. That’s probably everyone, but you are encouraged to read the whole document since it took much work to write.  Generally, this document is arranged as a list of menu items, since everything you would want to do is on a menu.
  4.  
  5. + Where to look for help
  6.  
  7. If you need help printing, look at the text for the “Printing” item on the “File” menu.  If you need help with formatting or configuring for your printer’s behavior, find the text for the “Options” menu under “Format” or “Printer.”
  8.  
  9. Special attention should be paid to the sections for “Printing,” “Format,” and “Printer,” as they are most likely to affect the way your documents are printed.
  10.  
  11. As with most user-supported software, the documentation is probably the weakest feature of DensePrint, but an effort was made to explain each option presented to the user so that intelligent choices can be made.
  12.  
  13. Any specific problems or questions will be politely addressed if I am contacted through one of the many ways listed in “About DensePrint.”
  14.  
  15. + Printing the documentation
  16.  
  17. In order to print any portion of this help, expert users can find its text in the application’s “DPrt” resources.  You’re welcomed to copy it out and paste it into TeachText or a word processor from which you can print it.  Please leave the text in DensePrint so that any copy you distribute contains its documentation internally.
  18.  
  19. Ironically, DensePrint cannot print its own documentation!  This is because it does not contain explicit carriage returns.  I’m considering adding a “Print” option to the help in the next version and/or adding an auto-word-wrap capability.
  20.  
  21. + Most successful use
  22.  
  23. DensePrint was conceived for use as a high-density page-printer’s companion for programmers.
  24.  
  25. It works best with high resolution (300 DPI or greater) printers and very well with those implementing PostScript or outline fonts.  For these printers, I prefer to use two columns at 50% reduction with 9-point Monaco or Courier.
  26.  
  27. ImageWriter printers don’t work well at 50% reduction, though the output can be readable, and I’m told it’s useful on occasion.  When using an ImageWriter, I print in single-column mode with 9-point size (8-point seems to cause the ImageWriter driver to choose ultracondensed font, which is also nice) and select the “Force ‘sticky’ spaces in ImageWriter draft” option, which corrects the unwanted effect of “word-grouping” that normally occurs when printing on ImageWriters in draft mode, causing your mono-spaced font to be printed “weird-spaced.”
  28.  
  29. Key enhancements can be found on the “Format” menu, and include user-defined printing offsets useful for binding your documentation.
  30.  
  31. You can make use of both sides of your paper by printing the odd pages first, then printing the even pages on the back sides.  For more information see the text on the “Odd Pages” and “Even Pages” items found on the “Options” menu.
  32.  
  33. + Dialog Behavior
  34.  
  35. Pressing the enter or return key is like hitting “Okay,” or if “Okay” does not exist, the heavily outlined button.  This indicates that you want to do the most reasonable thing, such as print the file you’ve selected, or save the parameters you’ve changed.
  36.  
  37. Pressing the escape key or command-period is the same as pressing the “Cancel” button.  This aborts the dialog you’re in without any changing anything.
  38.  
  39. Attempting to save values outside of the accepted range of an editable text field will cause the error alert to appear informing you of the value range allowed for that field.
  40.  
  41. The “Press Command-Period” dialog that comes up when printing is  drawn only to inform you that the printer driver IS SUPPOSED TO respond kindly to pressing the command-period combination.  Whether it does or not is up to the printer driver’s author.  If the driver tells DensePrint that printing has been cancelled, DensePrint kindly cancels printing.  Some drivers are more responsive to command-period than others.  DensePrint has no control over their responsiveness.
  42.  
  43. Otherwise, the dialogs behave in ways you have come to expect.
  44.  
  45. • Apple Menu
  46.  
  47. + About DensePrint…
  48.  
  49. You’re reading this, so I suspect you’ve probably found this option.  I claim this dialog “works as you’d expect”—the notable exception is the “slick” implementation of a “draggable modal dialog” that I’ve implemented and am considering publishing the code for.  It really wasn’t difficult.  Drop me a line if you’re interested.
  50.  
  51. + Other Apple Menu items
  52.  
  53. Everything else on the Apple menu behaves the way you’re used to.  If it doesn’t, let me know.  To the best of my knowledge, this program is a good example of adherence to the Macintosh Interface.
  54.  
  55. • File Menu
  56.  
  57. + Page Setup…
  58.  
  59. This item presents the familiar “Page Setup” dialog, which will behave the same as in other applications.
  60.  
  61. DensePrint attempts to save the current printer settings in the preferences file, but some printer drivers (notably, the HP DeskJet driver I use) ignore this when the “PrValidate” call is made, and saving these settings is therefore useless with those printers.
  62.  
  63. + Print…
  64.  
  65. Selecting this item causes a “standard file” dialog to be presented, allowing you to choose a file to print.  In the event that you select cancel, no further action is taken.
  66.  
  67. If you select “Print” from this dialog, a “job” dialog will be presented through which you can select parameters meaningful to the current file you wish to print.  At this point, you are at the mercy of whoever wrote your printer driver.  Usually, you will have no problems.  If you press “Cancel,” DensePrint will not attempt to print the file you selected.
  68.  
  69. If you select “Okay” (this depends on your printer), DensePrint will inform you that it’s printing and that you can cancel by pressing command-period, which all drivers supposedly support, and attempt to print the document you selected using the formats you’ve prescribed.
  70.  
  71. Any errors that occur during this process will be reported to you, though rarely do any occur.  DensePrint keeps a table of the most commonly occurring errors, which it reports in a “friendly” manner.  Those DensePrint does not know about are reported by ID number.
  72.  
  73. As prescribed by Inside Macintosh, DensePrint does not predetermine what “mode” the printer uses to print (such as “Draft” and “Spool”, which are described in Inside Macintosh), and you may find on some occasions that the driver you use decides to use spooling mode, a “disk full” error occurs.  The only way to correct this problem is to supply more space on your system disk.  
  74.  
  75. LaserWriter users may experience network errors during heavy network traffic, though these are rare.
  76.  
  77. ImageWriter users printing in draft mode will find that the ImageWriter driver chooses to print one column at a time, just as DensePrint’s internal code draws the page.  When starting the second and subsequent columns of each page, the driver then backs up to the top of the page to continue printing.  It’s my experience that many ImageWriters fail in this operation.  I’m sorry for this, but I didn’t write the ImageWriter drivers!  This utility was not conceived for use with an ImageWriter, so fixing this has a low priority.  Nevertheless, I’d still like to hear from those who object to this, since my priorities CAN change.
  78.  
  79. • Quit
  80.  
  81. “Gee Lucy!  I dun’ have time to ’splain everythin’!”
  82.  
  83. • Edit Menu
  84.  
  85. When a desk accessory is frontmost, all edit menu commands are correctly passed to the desk accessory, which should then exhibit the behavior you are accustomed to.  When you are not using a desk accessory, these items do nothing.
  86.  
  87. • Font Menu
  88.  
  89. + 9, 10, 12, 14, 18, 24
  90.  
  91. Selecting one of these point sizes works intuitively.  Outlined sizes “look good” on the Macintosh’s screen.  On bit-mapped printers such as the ImageWriters, LaserWriter SC, and my HP DeskJet, the shadowed sizes are those that “look good” printed at the font multiple that applies to your printer (which should be selected in the “Printer” dialog).  No items are drawn shadowed for PostScript or Outline Font printer drivers.
  92.  
  93. More information about font multiples can be found farther down in the text describing the “Printer” option on the “Options” menu.
  94.  
  95. 9-Point is the default font size.
  96.  
  97. + “Other” point sizes
  98.  
  99. You can select any point size from 6 to 127 with the “Other…” point size item.  Your printer may or may not print it in a high quality mode.  This option was included for PostScript or Outline font users.
  100.  
  101. In the dialog resulting from the selection of this menu item, the “Okay” button accepts any changes you’ve made to the point size, and “Cancel” ignores them.
  102.  
  103. Since this follows the chosen enumerated size, 9-Point is the default.
  104.  
  105. + Courier, Monaco, Other font
  106.  
  107. Selecting one of these items sets the font that DensePrint will use to print.  Normally, one will choose to print listings in a Courier or Monaco, so I chose to enumerate these.
  108.  
  109. Selecting “Other…” allows you to choose any font you wish to print, such as Boston II, or my Atlantis font.  I suggest not attempting to use a font that is not monospacing, since this will cause non-standard line-widths and therefore unpredictable (or rather, predictably ugly) results.
  110.  
  111. The default font is Monaco.
  112.  
  113. + Current font item
  114.  
  115. The last item on the font menu indicates the currently selected printing font, and since it cannot be selected, it is always dimmed.  Though it is a minor abuse of the Macintosh Interface to put an item on the menu for viewing purposes only, it was a better solution than requiring the user to open the “Other” dialog in order to see which “other” font is selected.
  116.  
  117. • Options Menu
  118.  
  119. + Odd Pages, Even Pages
  120.  
  121. Check the “Odd Pages” item if you want pages with odd numbers to be printed, and the “Even Pages” item if you want pages with even numbers to be printed.
  122.  
  123. Use of the Odd and/or Even pages option allows you to print files using each side of the paper.  To do this, check “Odd Pages” and uncheck “Even Pages” to print the front sides.  After the odd pages of your document have been printed on the front sides of your paper, check “Even Pages”, and uncheck “Odd Pages”, then arrange the pages of your document such that DensePrint can now print the even numbered pages of your document on the back sides, in ascending order, then print.
  124.  
  125. Both are checked by default, causing all pages to be printed.
  126.  
  127. + Format…
  128.  
  129. The “Format…” dialog, summoned by selecting the “Format” item on the “Options” menu, allows you to configure the behavior of DensePrint according to your personal preferences.  Following is a list of the items in the dialog and their meaning:
  130.  
  131. - Print page heads
  132.  
  133. Checking this item causes a page head to be printed at the top of each page.
  134.  
  135. Elements of the page head include the date and time the document is printed, the name of the file, and the page number.  When page heads are chosen, the content of the document is moved four lines down on the page in order to make room for the heading.  If page heads are not chosen, the content of the document prints at the top of the page’s print area—where the page head is normally printed.
  136.  
  137. This is checked by default.
  138.  
  139. - Swap page # w/date on even pages
  140.  
  141. Checking this option causes even-numbered pages to be printed with the page number on the left side of the page and the date on the right side, instead the default method, which is vice-versa.
  142.  
  143. This is useful when printing two-sided documentation, since by swapping the date and page number, it will cause the page number always to be printed toward the “outside” of the page; I.E., opposite the binding edge.
  144.  
  145. This item is unchecked by default
  146.  
  147. - Columns per page
  148.  
  149. The number you enter into this field determines how many columns are printed on each side of each printed page.
  150.  
  151. This option is the major feature of DensePrint not included in other text file printing programs, and the basis of its conception.  This feature allows you to take advantage of reduction and small font sizes to make better use of the surface of your paper.  For example, using my HP DeskJet printer, I set the Reduce/Enlarge percentage (using the page setup dialog with most drivers, and with others, the printing job dialog) to 50% for most of the things I print, when selecting two-column printing.  Using the customary nine point Monaco font, this allows me to effectively print four pages of the document on each face of the paper.  When using the back sides, one can print eight times as much per page at this reduction rate!   Using both sides, four columns, and 25% reduction, one can print 32 “pages” per sheet—but you may find you can’t READ text that small.
  152.  
  153. If you have some reason to print even MORE columns per page, DensePrint supports 1 through 9 in this field—though for more than two columns and/or smaller reduction than 50%, you MIGHT have to increase the memory allocated to DensePrint at launch time (this is done in the Finder by selecting the DensePrint application icon and choosing “Get Info” from the file menu).
  154.  
  155. The default number of columns per page is two.
  156.  
  157. – Spaces per tab
  158.  
  159. This option determines the number of spaces substituted for each tab character.
  160.  
  161. DensePrint does not merely substitute the number of spaces you enter for each tab.  Instead, it establishes tab stops for the document in the same way your favorite text editor probably does.  This means that comments tabbed out to a specific column (provided you set the tab spacing to the same number you do for your text editor and you use a MONOSPACED FONT such as Monaco in each,  your comments will be printed aligned as you aligned them in your text editor.   The acceptable range for values in this field is 1 through 99.
  162.  
  163. The default number of spaces per tab is four.
  164.  
  165. - Truncate long lines
  166.  
  167. When this item is checked, lines so long that they stray outside of their allotted column area are truncated.
  168.  
  169. While many people may consider this option a feature, I see it as more of a disservice.  I personally would rather leave the option unchecked, and allow extra-long lines to stray into the next column.  It is not necessarily true that the over-extended line will actually obscure lines printed in the next column, because almost all lines in most programming languages are indented.  As a result, most lines that would normally be truncated when using this option will extend into the next column and do NOT obscure the text in next column.
  170.  
  171. This item is therefore unchecked by default.
  172.  
  173. - Force “sticky” spaces in Imagewriter draft
  174.  
  175. Checking this option causes spaces to be replaced with “sticky” spaces in ImageWriter draft mode.  This option is ignored if a printer other than an ImageWriter is selected in the “Printer…” dialog.
  176.  
  177. This essentially cancels a “feature” of ImageWriter draft mode, which causes words to be squeezed together at the column-width for the ImageWriter’s native font that the print manager has chosen to replace the Macintosh’s bit-mapped font.  This print manager feature is supposedly implemented to cause the line-length in draft mode to be the same as it would in “best” mode.  However, it has the unwanted feature of making a mono-spaced font (such as most programmers use) NOT mono-spaced!
  178.  
  179. When cancelling out this feature, I didn’t spend any time with a “sophisticated” patch.  All I originally did to get around this problem was instead of calling the “DrawString” procedure for each line, I called the “CharWidth” function to get the width for each character printed, and manually move to the place where the character should be, then called the “DrawChar” procedure.  This was slow.  Now, I replace each space with a “sticky” space, which fools the ImageWriter driver into treating each line as a word (I.E. spaces are the same constant width of all other characters).
  180.  
  181. In the case that it works improperly for your particular implementation, you’re more than welcomed to turn the option off.  While I’m interested in knowing about situations in which this does not work, don’t necessarily expect any fixes for those problems.  I never envisioned this application as an ImageWriter utility, but rather one for printing files at high density on page printers.  Since this “kludge” was so easy, I decided to include (but not necessarily support) it.
  182.  
  183. This option is on by default.
  184.  
  185. - LeftBound, RightBound, Alternate, Off
  186.  
  187. Your selection from these radio buttons determines which type of margins your output will have.
  188.  
  189. If “LeftBound” is selected, your output will be printed with a margin on the left side of the paper, suitable and most commonly desired for single-sided printing that’s three-hole-punched for insertion into a binder.
  190.  
  191. If “RightBound” is selected, your output will be printed with a margin on the *right* side of the paper.  I’m not sure why you might want this, but maybe someone in Japan does (let me know if it’s true).  I figured someone would complain if it wasn’t included, so here it is!
  192.  
  193. The “Alternate” selection prints odd-numbered pages leftbound and even-numbered pages rightbound.  This is useful for binding your double-sided document, as the back sides will be offset the same as the fronts.  (It becomes apparent to me after reading this that if the people in Japan and elsewhere use the RightBound option, they’re gonna want an inverted version of this feature.  Anyone to whom this applies, drop me a line.)
  194.  
  195. “Off” causes your document to be printed using the entire printable area of the page.
  196.  
  197. Off is the default setting.
  198.  
  199. - Pixel offset
  200.  
  201. This option corresponds to the previous option, and determines how many pixels the binding margin will consume.
  202.  
  203. Usually, 72 pixels is an inch, but not always.  Particularly, if you print at a reduce/enlarge rate of other than 100%, 72 pixels will no longer be an inch.  Printing at 50% reduction, the number of pixels per inch is doubled, most likely 144 pixels per inch.  HOWEVER, there are other factors involved, so experimentation may be necessary.  The acceptable range of pixels offset is 1 to 16000.
  204.  
  205. I chose NOT to specify margins in inches, points, or any other measurement unit for this reason.  Apple provides no way to find out how many pixels per inch there are on a page.  True, they do allow you to find out the vertical and horizontal resolution of the device, but that does no good when the reduction rate is not 100%.
  206.  
  207. To make matters worse, some drivers for non-Apple printers do not supply correct vertical and horizontal resolution anyway.
  208.  
  209. The default is 72 pixels offset—which is usually an inch at 100%.  However, the default option for binding is “Off” so you will want to check that item to use binding as previously described.
  210.  
  211. + Printer…
  212.  
  213. This menu item causes the printer selection dialog to be presented.  Selection of the correct printer and correct “font multiplier” through this dialog informs DensePrint of which printer you are using, allowing it to tell you more accurately which bit-mapped fonts will look good with your printer and to decide which options are valid for your printer.
  214.  
  215. Using this method for determining the correct printer and its “font multiplier” is necessary because some printer drivers (notably, non-Apple drivers, such as the HP DeskJet driver I use) often tell DensePrint that they print to ImageWriters or the Macintosh screen.  Allowing user selection insures greater compatibility and flexibility.
  216.  
  217. The default printer selected for this dialog is determined by the contents of system string resource number -8192 when the preferences are initialized—probably when DensePrint is launched for the first time.  Following is a list of the dialog’s items and their uses.
  218.  
  219. - ImageWriter I/II, ImageWriter LQ, LaserWriter SC, LaserWriter/Plus/NT/NTX
  220.  
  221. These are all the Apple printers for the Macintosh at the time this version of DensePrint was released.  If you have one of these, simply select the one you have, press the “Okay” button, and everything else will be done for you.
  222.  
  223. - Doesn’t Care (PostScript/Outline)
  224.  
  225. This is for printer drivers that use the PostScript page description language, a PostScript “clone,” outline font printing techniques, or perhaps something I may not have expected.  It’s possible that when Apple Macintosh System 7.0 (which will supposedly implement outline fonts) is released, all printers will be in this category.  We shall see.
  226.  
  227. This feature is useful since it allows DensePrint to assume that “any size font” will look good on your printer.  At this time, DensePrint does not use that information for a special application, except to avoid treating it like a printer that makes use of font multiples by shadowing fonts available in multiples on the “Font” menu.  Later, this assumption may be used in some other way.
  228.  
  229. Naturally, the “_ x Screen Resolution” option has no meaning for PostScript or Outline printers.
  230.  
  231. - Other
  232.  
  233. This is for the rest of us (me).  Select this item if you don’t have one of the above printers, or you don’t think the printer you have behaves like one of those above.
  234.  
  235. When this item is selected, it becomes important to put the proper font multiplier in the “_ x Screen Resolution” field (described next,) since the multiplier will NOT be chosen for you.
  236.  
  237. - “_ x Screen Resolution”
  238.  
  239. The Apple ImageWriter and ImageWriter II print at twice the pixel density of the Macintosh screen.  Therefore, when the ImageWriter driver prints, it checks to see if a font twice the chosen size exists.  If it does, that font is chosen and scaled to half-size, which allows it to take full advantage of the maximum resolution of the printer.
  240.  
  241. Many other drivers work similarly.  The Apple ImageWriter LQ driver uses fonts THREE times as large as that used on the screen to take advantage of its high resolution, and the LaserWriter SC driver uses a font FOUR times as large.  My HP DeskJet is very similar to the LaserWriter SC in that it has the same resolution as the SC and uses a font four times as large to take advantage of its high resolution.
  242.  
  243. For DensePrint to know about your printer’s ability to take advantage of font multiples, you must enter the correct font multiplier in this field.  For the ImageWriter driver, it is automatically set to two.  The LQ driver’s automatic setting is three, the SC’s is four.  For other LaserWriters and PostScript/Outline printers, this multiplier has no meaning and is set to zero to indicate this.
  244.  
  245. For printers that take advantage of this capability, correct use of this option will cause font sizes that “look good when printed” to be displayed using shadowed text on the “Font” menu.  PostScript/Outline printer users (or users entering “0”) will only see the fonts that look good on the screen outlined on the “Font” menu.
  246.  
  247. The acceptable range for this value is 0 through 9.